Relational databases are a cornerstone of modern information technology and its applications. Network-based purchase and billing systems, shipment and inventory tracking, technical literature services, as well as universities and research laboratories institutional information are a few examples of the relevance of relational databases. The ability to access and manipulate information in relational databases seamlessly with respect to the particular tools (e.g., software applications and languages) used to conduct the manipulation becomes essential to the success of the tasks that rely on these databases.
To accomplish a specific network-based task, such as purchasing an airline ticket or tracking inventory, disparate distributed third-party applications based on disparate computer languages demand accessing and manipulating a common set of data stored in a common relational database. Software providers write software applications to handle massive relational databases. However, achieving uniform and seamless access and manipulation of data in a common database would require a framework capable of mapping objects in the code of the third-party applications to data in the common database. Thus, the focus of dealing with relational databases is gradually shifting toward achieving a seamless object-relational mapping that is inert to the implementation language of the application that needs access to the database, or the language in which the database is implemented and managed.